// pages/Todos/Todos.js
Page({

    /**
     * 页面的初始数据
     */
    data: {
        ToDoList: [], //存储发布内容所有的值
        ToDoList2: [], //用来储存更新之前的数据的

    },

    // 发布 -- 测试
    // async addTodo(event) {
    //     let ToDoText = event.detail.value //将输入框的值赋值给一个变量
    //     ToDoText.status = false // 给定义的变量添加一个状态值
    //     // console.log(todoData);
    //     let res = await wx.cloud.database().collection('ToDoList').add({
    //         data: ToDoText
    //     })
    //     console.log(res);
    // },
    //添加任务
    async addTodo(ev) {
        let ToDoData = ev.detail.value //将输入框的值赋值给一个变量
        ToDoData.status = false // 给定义的变量添加一个状态值
        // console.log(ToDoData);
        let res = await wx.cloud.database().collection('ToDoList').add({
            data: ToDoData
        })
        wx.showToast({
            title: '添加成功',
            icon: 'success',
            duration: 2000
        })
        this.getTodolist(); //重新刷新数据
        // console.log(res);
    },

    // 删除任务
    delete(el) {
        console.log(el.currentTarget.dataset.id);
        wx.cloud.database().collection('ToDoList').doc(el.currentTarget.dataset.id).remove({
            success: res => {
                wx.showToast({
                    title: '删除成功',
                    icon: 'success',
                    duration: 2000
                })
                // console.log(res);
                this.getTodolist(); //重新刷新数据
            }
        })
        // console.log(res);
    },

    // 修改状态值
    modify(ev) {
        // console.log(ev.currentTarget.dataset.status);
        wx.cloud.database().collection('ToDoList').doc(ev.currentTarget.dataset.id).update({
            data: {
                status: !ev.currentTarget.dataset.status
            },
            success: res => {
                // console.log(res);
                wx.showToast({
                    title: '修改成功',
                    icon: 'success',
                    duration: 2000
                })
            }
        })
    },

    // 获取所有任务 
    allTask() {
        this.getTodolist()
    },

    // 已完成任务
    overTask() {
        this.setData({
            ToDoList: this.data.ToDoList2.filter(item => item.status)
        })
        console.log(this.data.ToDoList);
    },

    //未完成的任务
    noTask() {
        this.setData({
            ToDoList: this.data.ToDoList2.filter(item => !item.status)
        })
    },

    // 删除已完成的
    remove() {
        wx.cloud.database().collection('ToDoList').where({
            status: true
        }).remove({
            success: res => {
                console.log(res);
                this.getTodolist()
            }
        })
    },

    // 获取后台的数据 ---封装
    getTodolist() {
        wx.cloud.database().collection('ToDoList').get({
            success: res => {
                console.log(res);
                this.setData({
                    ToDoList: res.data,
                    ToDoList2: res.data
                })
            }
        })
    },
    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options) {
        // console.log(options);
        this.getTodolist()
        // wx.cloud.database().collection('ToDoList').get({
        //     success: res => {
        //         console.log(res);
        //         this.setData({
        //             ToDoList: res.data
        //             ToDoList2: res.data
        //         })
        //     }
        // })
    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {

    }
})